1. Field of the Invention
The present invention relates to a search engine and method for high-speed network application, more specially, to an apparatus and method providing information search from layer-2 to layer-7 in the OSI network layers.
2. Description of the Prior Art
An internet, including but not limited to, the Internet, intranets, extranets and similar networks, is a world-wide network of computers, where each computer is identified by a unique address. The addresses are logically subdivided into domains or domain names (e.g. ibm.com, pbs.org, and oranda.net), which allow users to reference the various addresses. A web, including but not limited to the World Wide Web (WWW) is a group of these computers accessible to each other via a common communication protocol, or language, including but not limited to Hypertext Transfer Protocol (HTTP).
As computer performance has increased in many years, the demands on computer networks has significantly increased; faster computer processors and higher memory capabilities drive the needs for networks with high bandwidth capabilities to enable high speed transfer of significant amounts of data. The well-known Ethernet technology, which is based on the IEEE 802.3 standards, is one example of computer networking technology which has gone through many modifications and improvements to remain a viable computer networking technology. Based upon the Open Systems Interconnect (OSI) 7-layer reference model, network capabilities have grown through the development of repeaters, bridges, routers, and switches, which operate with various types of communication media. Switches or routers are hardware-based devices which control the flow of data packets or cells based upon destination address information that is available in each packet. A properly designed and implemented switch or router should be capable of receiving a packet and forwarding it to an appropriate output port at what is referred to wire-speed or line-speed, which is the maximum speed capability of the particular network technology. Currently, Ethernet wire-speed typically ranges from 10 Megabits per second (Mps) up to 10,000 Mps, or 10 Gigabits per second. As speed has increased, design constraints and requirements have become more and more complex with respect to following appropriate design and protocol rules and providing a low cost, commercially viable solution.
In such a network, packets are transmitted from a source device to a destination device; and these packets can travel through one or more switches and/or routers. Standards have been set to define the packet structure and layers of functionality and sophistication of a network. For example, the TCP/IP protocol stack defines four distinct layers, namely, the physical layer (layer-1), data link layer (layer-2), network layer (layer-3), transport layer (layer-4). A network device may be capable of supporting one or more of the layers and refers to particular fields of the packet header accordingly. Typical LANs are comprised of a combination of Layer-2 (data link layer) and Layer-3 (network layer) network devices. In order to meet the ever increasing performance demands for the network, functionality that has been traditionally performed in software and/or in separate layer-2 or layer-3 devices have migrated into one multi-layer device or switch that implements the performance critical functions in hardware.
Another function of data networks is the routing of data packets or frames from a source network node to one or more destination network nodes. When a network device receives a packet or frame, the device examines the packet or frame in order to determine how the packet or frame is to be forwarded. Similar forwarding decisions are made as necessary at multiple intermediate network devices until the packet or frame is received at the desired destination node. This type of operation is in contrast to networks employing circuit-switching techniques, in which routes are pre-established as “circuits” and each network device simply forwards each received packet on its associated circuit. One example of a routed network is the Internet, which employs a protocol known as the Internet Protocol (IP) for routing data packets through the Internet.
The Transport Control Protocol/Internet Protocol (TCP/IP) suite of protocols is used in many of today's networks. A TCP/IP-based network, such as the Internet, provides a data packet routing system for communication between nodes (e.g., end-user workstations, servers, network devices, etc.) connected to the Internet. In traditional destination address based routing, a source node specifies a destination Internet protocol (IP) address for the IP address of the destination node in an IP datagram. The IP datagram is encapsulated in a physical frame, or packet, and sent to a router attached to the network of the source node. The router receiving the frame parses the IP datagram to determine the outgoing port for the next router or the destination node. The router selects the next router enroute to the destination node and again encapsulates the datagram in a physical frame for transmission to the next router. This process continues until the IP datagram reaches the network to which the destination node is connected.